
import random

# 全局变量
max_value = 10
min_value = 1
operators = ['+']
def init_game():
    # 初始化游戏
    print('游戏说明：\n你将被随机给出一个公式，你需要计算出公式的结果。')
    print("游戏有2中模式的选择：")
    print(" 1. 加法运算：2个数字加1个符号+")
    print(" 2. 减法运算：2个数字加1个符号-")
    # print(" 3. 困难难度：4个数字加3个符号")
    print("祝你好运！")
    print("======================================")

#参数
def get_user_input(level):
    global max_value, min_value, operators
    # 获取用户输入
    if level == '1':
        #修改全局变量
        max_value = 10
        min_value = 1
        operators = ['+']
    elif level == '2':
        max_value = 10
        min_value = 1
        operators = ['-']
    else:
        num_operators = 3
def get_random_formula():
    # global max_value, min_value, operators
    # 生成随机数
    num1 = random.randint(min_value, max_value)
    num2 = random.randint(min_value, max_value)
    num3 = random.randint(min_value, max_value)
    # 生成随机符号
    operator1 = random.choice(operators)
    operator2 = random.choice(operators)
    # 生成公式
    formula = f'{num1} {operator1} {num2} '
    print(f'生成的公式是：{formula}', end='\n')
    return formula


def calculate_formula(formula):
    # 计算公式的结果
    print(f'计算结果是：{eval(formula)}', end='\n')
    return eval(formula)
def check_result(input_result, result):
    # 检查输入结果是否正确
    return input_result == str(result)
def print_result(is_check):
    # 打印结果
    if is_check:
        print('恭喜你，回答正确！')
    else:
        print('很遗憾，回答错误！')

if __name__ == '__main__':
    # 游戏说明
    init_game();
    print('请选择模式：\n1.加法\n2.减法\n3.退出'
          '\n -------------------------')
    level = input('请输入模式：');
    # 获取用户输入
    get_user_input(level)
    while level != '3':
        # 获取用户输入
        get_user_input(level)
        # 生成随机数
        formula = get_random_formula()
        # 输入结果
        input_result = input('请输入计算结果：')
        # 计算
        result = calculate_formula(formula)
        # 检查结果
        is_check = check_result(input_result, result);
        print_result(is_check);
        print('------------------------------')
        print('请选择模式：\n1.加法\n2.减法\n3.退出')
        level = input('请输入难度：');
